var gridconfig=function grid(){
	//获取数据的链接
	this.dataUrl="",
	//表格字段设置
	this.column=[],
    //搜索字段
    this.queryField=null;
}

var selectRow;
$(function() {
	// 1.初始化Table
	var oTable = new TableInit();
	oTable.Init();
	// 2.初始化Button的点击事件
	var oButtonInit = new ButtonInit();
	oButtonInit.Init();
	//容器ID统一命名为：mytable
	//点击行事件
	$("#mytable").on("click-row.bs.table",function(e,row,ele){
         $(".danger").removeClass("danger");
         $(ele).addClass("danger");
         selectRow = row;
     });
	 if (!jQuery().datetimepicker) {
         return;
     }

     $(".form_datetime").datetimepicker({
         language: 'zh-CN',
         weekStart: 1,
         todayBtn:  1,
         autoclose: 1,
         todayHighlight: 1,
         startView: 1,
         minView: 0,
         maxView: 1,
         format: 'hh:ii',
         forceParse: 0
     });
     //查询按钮统一命名为：btn_query
	$('#btn_query').click(function() {
		var role_name_search = $('#role_name_search').val();
		var options = $('#mytable').bootstrapTable('refresh');
	});

});

var TableInit = function() {
	var oTableInit = new Object();
	// 初始化Table
	oTableInit.Init = function() {
		console.info("进入");
		$('#mytable')
				.bootstrapTable(
						{
							url : getApiRoot() +gridconfig.dataUrl, // 请求后台的URL（*）
							method : 'get', // 请求方式（*）
							contentType : 'application/json',
							dataType : 'json',
							toolbar : '#toolbar', // 工具按钮用哪个容器
							striped : true, // 是否显示行间隔色
							cache : false, // 是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
							pagination : true, // 是否显示分页（*）
							sortable : false, // 是否启用排序
							sortOrder : "asc", // 排序方式
							queryParams : oTableInit.queryParams,// 传递参数（*）
							sidePagination : "server", // 分页方式：client客户端分页，server服务端分页（*）
							/*
							 * pageNumber:1, //初始化加载第一页，默认第一页 pageSize: 10,
							 * //每页的记录行数（*）
							 */
							traditional : true,
							offset : 1,
							limit : 10,
							pageList : [ 10, 25, 50, 100 ], // 可供选择的每页的行数（*）
							search : false, // 是否显示表格搜索，此搜索是客户端搜索，不会进服务端，所以，个人感觉意义不大
							strictSearch : true,
							showColumns : true, // 是否显示所有的列
							showRefresh : true, // 是否显示刷新按钮
							minimumCountColumns : 2, // 最少允许的列数
							clickToSelect : true, // 是否启用点击选中行
							// height : 500, //
							// 行高，如果没有设置height属性，表格自动根据记录条数觉得表格高度
							uniqueId : "ID", // 每一行的唯一标识，一般为主键列
							showToggle : true, // 是否显示详细视图和列表视图的切换按钮
							cardView : false, // 是否显示详细视图
							detailView : false, // 是否显示父子表
							rowStyle : function(row, index) {
//								var classes = [ 'active', 'success', 'info',
//										'warning', 'danger' ];
//								if (index % 2 === 0
//										&& index / 2 < classes.length) {
//									return {
//										classes : classes[index / 2]
//									};
//								}
								return {};
							},
							columns :gridconfig.column
						});
	};

	// 得到查询的参数
	oTableInit.queryParams = function(params) {
		var temp = { // 这里的键的名字和控制器的变量名必须一直，这边改动，控制器也需要改成一样的
			limit : params.limit, // 页面大小
			offset : params.offset, // 页码
            sort: params.sort,
            order: params.orde,
            search:params.search
		};
		temp = setFullParameter(temp);
		
        for(var index in gridconfig.queryField){
            temp[index]=$("#"+gridconfig.queryField[index]).val();
        }
		
		//console.info("temp", temp);
		return temp;
	};
	return oTableInit;
};

var ButtonInit = function() {
	var oInit = new Object();
	var postdata = {};

	oInit.Init = function() {
		// 初始化页面上面的按钮事件
	};

	return oInit;
};

$modalConfirm = function(content, callBack) {
	layer.confirm(content, {
		icon : "fa-exclamation-circle",
		title : "系统提示",
		btn : [ '确认', '取消' ],
		btnclass : [ 'btn btn-primary', 'btn btn-danger' ],
	}, function(index) {
		callBack(true);
		layer.close(index);
	}, function() {
		callBack(false);
	});
}
function showAlert(title, type) {
	$alert.attr('class', 'alert alert-' + type || 'success').html(
			'<i class="glyphicon glyphicon-check"></i> ' + title).show();
	setTimeout(function() {
		$alert.hide();
	}, 3000);
}